package com.ponhu.ea2.vo;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.ponhu.ea2.enums.InventoryAppraisalEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.apache.commons.lang3.StringUtils;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Optional;

@Data
@Accessors(chain = true)
@ApiModel(value = "货品基本信息-会员小程序")
public class PhInventoryToAmqpVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "货品编码")
    private String inventoryCode;

    @ApiModelProperty(value = "货品名称")
    private String inventoryName;

    @ApiModelProperty(value = "货品主图")
    private String mainImage;

    @ApiModelProperty(value = "货品细节图")
    private String detailImage;

    @ApiModelProperty(value = "品牌ID")
    private Long brandId;

    @ApiModelProperty(value = "一级品类ID")
    private Long firstCategoryId;

    @ApiModelProperty(value = "二级品类ID")
    private Long secondCategoryId;

    @ApiModelProperty(value = "三级品类ID")
    private Long thirdCategoryId;

    @ApiModelProperty(value = "是否二奢：0-全部，1是，2否")
    private Integer isSecondhand;

    @ApiModelProperty(value = "成色")
    private String qualityValue;

    @ApiModelProperty(value = "鉴定师")
    private String appraiserName;

    @ApiModelProperty(value = "原产地")
    private String provenance;

    @ApiModelProperty(value = "年份")
    private String year;

    @ApiModelProperty(value = "货品来源渠道：字典值")
    private Integer inventoryChannel;

    @ApiModelProperty(value = "瑕疵")
    private String flaw;

    @ApiModelProperty(value = "备注")
    private String remarks;

    @ApiModelProperty(value = "中检状态：0-全部，1未中检，2中检已通过，3中检未通过")
    private Integer isDoneCcic;

    @ApiModelProperty(value = "商品卖点")
    private String sellingPoint;

    @ApiModelProperty(value = "货品附件集合")
    private String annex;

    @ApiModelProperty(value = "货品配件集合")
    private String accessory;

    @ApiModelProperty(value = "货品成本")
    private BigDecimal inventoryCost;

    @ApiModelProperty(value = "含税销售价")
    private BigDecimal saleTaxPrice;

    @ApiModelProperty(value = "属性集合")
    private BigDecimal officialPrice;

    @ApiModelProperty(value = "上下架状态")
    private Integer goodsStatus;

    @ApiModelProperty(value = "更新时间")
    private String updatedTime;

    @ApiModelProperty(value = "属性集合")
    private Map propertyMap;

    @ApiModelProperty(value = "适用人群 1 所有人 2 男士 3 女士")
    private Integer applyCrowd;

    @ApiModelProperty(value = "库存")
    private Integer stockNum;
}
